It is known to provide computers with ICC interface units (often called smartcard readers though, in fact, data is frequently both read from, and passed to, the card). Such ICC interface units have traditionally been provided as separate peripherals, interfacing with the computer through a dedicated port (for example, an RS232 serial port).
For simple user convenience, rather than providing the ICC interface unit as a separate peripheral, it is also known to incorporate an ICC interface into the keyboard unit of the computer. Generally, this combination of keyboard and ICC interface has simply been a packaging exercise with the functionality of the keyboard and ICC interface remaining separate. FIG. 1 of the accompanying drawings illustrates such an arrangement for a keyboard unit 10 connected to a host computer 11. This unit 10 is provided with the standard keyboard components of a key matrix 12 (taken to include the keyboard keys) and keyboard controller 13, the keyboard controller operating to detect key presses and to output corresponding key codes to the host computer 11 over a serial keyboard link 14. The keyboard unit also has an ICC interface comprising a card receiver 15 into which a smartcard 16 can be inserted to electrically connect the card circuits with the ICC interface, an ICC controller 17 for controlling both the exchange of data with the card 16 and communication with the host computer 11 over a serial link 18, and a PIN pad 19 for use in entering a PIN code to enable certain functions of the smartcard 16 or to authorise transactions using the card. Both the keyboard controller and the ICC controller are generally implemented using respective program-controlled processors (typically in the form of microcontrollers).
In use of the FIG. 1 keyboard unit, when a PIN code is required to be entered, this is done using the PIN pad 19, the code being passed to the card 16 by the ICC controller 17. With this arrangement, the PIN code is routed entirely within the ICC interface on its way to the smartcard and there is no need to encrypt the PIN code.
It will be appreciated that the FIG. 1 arrangement is not an optimised one since there is a duplication of certain elements between the keyboard part and the ICC interface part. In particular, the provision of the PIN pad 19 is generally an unnecesary duplication as this is normally a simple numeric keypad the equivalent of which is to be found on most current computer keyboards. FIG. 2 shows a known prior art arrangement in which the PIN pad 16 of FIG. 1 has been removed; instead, PIN entry is now done using the key matrix 12, the PIN being passed, like any other keyed input, to the host computer 11 where it is then rerouted back to the ICC controller 17 and onto the smartcard 16. Not only does this arrangement avoid the need for the PIN pad 19, but it also enables the host computer to effect any required code translation so that the character codes passed to the smartcard in respect of the PIN, are in a character/character code mapping understood by the card (this mapping may be different from that effectively implemented by the keyboard controller 13 when outputting key codes to the host).
However, the FIG. 2 arrangement suffers from the drawback that the PIN must now pass out of the keyboard unit and into the host computer where it is much more vunerable to being copied or substituted for. By accepting the overhead of encrypting the PIN code, the PIN may be protected during transmission over the links 14 and 18; however, if the PIN needs to undergo code translation in the host to make it understandable to the smartcard, then it will need to be processed in clear in the host computer, leaving it open to attack.
Another possible arrangement would be to have the ICC interface monitor all output from the keyboard controller in much the same manner as described in European patent specification EP-A-0 486 363 (Thomson CSF). In this case, the ICC controller would watch for a particular keyed input code telling it that the following key codes were to be treated as input for the smartcard. Such an arrangement permits a PIN code to be intercepted and passed directly to the smartcard; however, it suffers from the drawback of requiring the user to input first a special code to tell the ICC controller to intercept the PIN code.
It is an object of the present invention to provide a computer keyboard unit including an ICC interface, which alleviates at least some of the problems exhibited by the prior art discussed above.